//
// Created by jwhww on 25-8-27.
//

#ifndef KEY_H
#define KEY_H

#include "AllHeadFile.h"

//按键位号
#define KEYPIN1_PIN_PORT    (Bottom_1_GPIO_Port)
#define KEYPIN1_PIN         (Bottom_1_Pin) //测试用
#define KEYPIN2             (P10_1)
#define KEYPIN3             (P10_3)
#define KEYPIN4             (P20_6)
#define KEY_ENCODER         (P00_8)

//按键状态
typedef enum {
    KEY_CHECK,
    KEY_COMFIRM,
    KEY_UNPRESSED
}keyStateEnum;
//按键结构体
typedef struct{
    keyStateEnum state;
    uint8_t flag;
}keyStruct;

extern int state_NVIC_tim_1;     //pit中断标志位
extern uint8_t state_key_1;          //WIFI图传状态位
extern keyStruct key[4];            //逐飞电路板右侧4个按键


//按键检查
void Key_Check(int num, keyStruct *key, GPIO_TypeDef *key_pin_port, uint16_t key_pin);
void Key_Check_All(void);
//按键对应程序
void Key_1_Job (void);  //外置按钮，按下清屏，再按亮屏

//进行所有按键检查
void Key_Check_All(void);

#endif //KEY_H
